package com.cheng.im.service.group.model.resp;

import com.cheng.im.service.group.model.req.GroupMemberDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * @author: Chackylee
 * @description:
 **/
@Data
@ApiModel("IM获取群详情响应类")
public class GetGroupResp {

    @ApiModelProperty("群ID")
    private String groupId;

    @ApiModelProperty("appid")
    private Integer appId;

    //群主id
    @ApiModelProperty("群主idD")
    private String ownerId;

    //群类型 1私有群（类似微信） 2公开群(类似qq）
    @ApiModelProperty("群类型 1私有群（类似微信） 2公开群(类似qq）")
    private Integer groupType;

    @ApiModelProperty("群名称")
    private String groupName;

    @ApiModelProperty("是否全员禁言，0 不禁言；1 全员禁言。")
    private Integer mute;// 是否全员禁言，0 不禁言；1 全员禁言。

    //    申请加群选项包括如下几种：
//    0 表示禁止任何人申请加入
//    1 表示需要群主或管理员审批
//    2 表示允许无需审批自由加入群组
    @ApiModelProperty("加入群权限，0 所有人可以加入；1 群成员可以拉人；2 群管理员或群组可以拉人")
    private Integer applyJoinType;

    @ApiModelProperty("是否禁止私聊，0 允许群成员发起私聊；1 不允许群成员发起私聊。")
    private Integer privateChat; //是否禁止私聊，0 允许群成员发起私聊；1 不允许群成员发起私聊。

    @ApiModelProperty("群简介")
    private String introduction;//群简介

    @ApiModelProperty("群公告")
    private String notification;//群公告

    @ApiModelProperty("群头像")
    private String photo;//群头像

    @ApiModelProperty("群最大人数")
    private Integer maxMemberCount;//群成员上限

    @ApiModelProperty("群状态 0正常 1解散")
    private Integer status;//群状态 0正常 1解散

    @ApiModelProperty("群成员列表")
    private List<GroupMemberDto> memberList;
}
